package com.jrx.anytxn.param.mapper.ext;

import com.jrx.anytxn.common.annotation.ParamTuningAnnotation;
import com.jrx.anytxn.param.entity.PrInterestTable;
import com.jrx.anytxn.param.mapper.base.PrInterestTableMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 利率表 mapper接口扩展
 *
 * @author Qingyao Xing
 * @date 2019/9/27 16:10
 */
public interface ExtPrInterestTableMapper extends PrInterestTableMapper {
    /**
     * 根据字段查询
     *
     * @param interestId,organizationId
     * @return int
     */
    PrInterestTable selectByInterestId(@Param("interestId") String interestId,  @Param("tenantId") String tenantId);

    /**
     * 根据租户ID查询
     *
     * @param tenantId 租户ID
     * @return java.util.List<com.jrx.anytxn.param.entity.PrInterestTable>
     * @author fan.yang
     * date: 2019/10/14 0014 下午 13:28
     */
    List<PrInterestTable> selectByTenId(String tenantId);

    /**
     * 根据租户Id和利率表ID更新
     *
     * @param interestTable 利率实体
     * @return int
     * @author fan.yang
     * date: 2019/10/14 0014 下午 13:32
     */
    @ParamTuningAnnotation
    int updateByTenIdAndInterestId(PrInterestTable interestTable);

    /**
     * 根据租户ID和利率表ID查寻信息
     *
     * @param tenantId   租户ID
     * @param interestId 利率表ID
     * @return com.jrx.anytxn.param.entity.PrInterestTable
     * @author fan.yang
     * date: 2019/10/14 0014 下午 13:25
     */
    PrInterestTable selectByTenIdAndInterestId(@Param("tenantId") String tenantId, @Param("interestId") String interestId);

    /**
     * 根据租户ID和利率表ID删除此信息
     *
     * @param tenantId   租户ID
     * @param interestId 利率表ID
     * @return int
     * @author fan.yang
     * date: 2019/10/14 0014 下午 13:37
     */
    @ParamTuningAnnotation
    int deleteByTenIdAndInterestId(@Param("tenantId") String tenantId, @Param("interestId") String interestId);
}